package com.beamfield.dao.sys;

import com.beamfield.model.SpecialOperator;
import com.beamfield.model.SpecialOperatorExample;
import java.util.List;

import com.beamfield.modelVo.ManagerTrainVo;
import org.apache.ibatis.annotations.Param;
import org.springframework.stereotype.Component;

@Component
public interface SpecialOperatorMapper {
    int deleteByPrimaryKey(Long special_operator_id);

    int insert(SpecialOperator record);

    int insertSelective(SpecialOperator record);

    List<SpecialOperator> selectByExample(SpecialOperatorExample example);

    SpecialOperator selectByPrimaryKey(Long special_operator_id);

    int updateByPrimaryKeySelective(SpecialOperator record);

    int updateByPrimaryKey(SpecialOperator record);

	Integer selectCountByExample(SpecialOperatorExample example);

	List<ManagerTrainVo> getDetailSpecialOperatorList(
			@Param("offset")Integer offset, 
			@Param("limit")Integer limit, 
			@Param("special_operator_id")Long special_operator_id);

	Integer getDetailSpecialOperatorCount(@Param("special_operator_id")Long special_operator_id);

	Integer checkCountSpecialOperatorIDCard(
			@Param("identity")String identity, 
			@Param("special_operator_id")Long special_operator_id);

	Integer getSpecialOperatorCount();

	int countByGroupAndEcode(@Param("ecode") String ecode, @Param("group") String group, @Param("presasg") String presasg,@Param("beamId") Long beamId);

	SpecialOperator selectByCodeAndBeamId(@Param("beam_id") Long beamId,@Param("ecode") String ecode);

	Integer getCountByBeamId(@Param("beamId") Long beamId);
}